#pragma once

#include "HRPCDefine.h"
#include "../base/eec/autopinter.hpp"

namespace rpc {

class HRPCHelper {
    typedef EEC_STD::function<int(const int& _index)> HConnectCallback;
    typedef EEC_STD::function<int(const int& _index)> HDisConnectCallback;
    typedef EEC_STD::function<int(const int& _index, const base::eec::shared_ptr<HRPCMessage>& _in, base::eec::shared_ptr<HRPCMessage>& _out)> HRequestCallback;

public:
    int new_service(const std::wstring& _name, const HRequestCallback& _callback);
    int new_client(const std::wstring& _name, const HRequestCallback& _callback);

public:
    int send_message(int _index, )
};

} // namespace rpc